From: Aaron S. Hawley Date: Fri, 16 Mar 2012 07:21:23 +0000 (-0700) Subject: tar-mode buffer-read-only fix X-Git-Tag: archive/raspbian/1%29.2+1-2+rpi1^2~5^2~2326^2~2761^2~15 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:///%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:/?a=commitdiff_plain;h=6f09f6ed089766e1bd113d343576da7dd963740b;p=emacs.git tar-mode buffer-read-only fix * lisp/tar-mode.el (tar-mode): Fix saving by conditionally undoing `special-mode' setting of `buffer-read-only'. Fixes: debbugs:11010 --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 35da6fc9e31..3fd5cbfcf26 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-03-16 Aaron S. Hawley + + * tar-mode.el (tar-mode): Fix saving by conditionally undoing + `special-mode' setting of `buffer-read-only'. (Bug#11010) + 2012-03-16 Glenn Morris * view.el (view-buffer, view-buffer-other-window) diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el index 949ac4c0889..3eb2be15698 100644 --- a/lisp/tar-mode.el +++ b/lisp/tar-mode.el @@ -634,6 +634,9 @@ inside of a tar archive without extracting it and re-archiving it. See also: variables `tar-update-datestamp' and `tar-anal-blocksize'. \\{tar-mode-map}" + (and buffer-file-name + (file-writable-p buffer-file-name) + (setq buffer-read-only nil)) ; undo what `special-mode' did (make-local-variable 'tar-parse-info) (set (make-local-variable 'require-final-newline) nil) ; binary data, dude... (set (make-local-variable 'local-enable-local-variables) nil)